import Vue from "vue";
import App from "./App.vue";
import emitter from "./utils/event-emitter";

Vue.config.productionTip = false;

// Vue.prototype.$bus = new Vue();

new Vue({
  beforeCreate() {
    // 全局事件总线对象
    // 为什么全局事件总线对象放到Vue的原型对象上? 为了所有组件实例都能访问
    // 为什么全局事件总线对象是vue的实例对象?
    // vue的实例对象上有自定义事件的方法（$on\$once\$off\$emit）, 我们通过这些方法来实现组件通信的
    // Vue.prototype.$bus = this;
    Vue.prototype.$bus = emitter;
  },
  render: (h) => h(App),
}).$mount("#app");
